{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Getting Started\n", "To get started with EchoFlow, you can install it from `pip` by running:\n", "\n", "```python\n", "pip install echoflow\n", "```\n", "\n", "In this tutorial, we'll load the **spiral** dataset which is provided with the library." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
xy
00.0803770.008525
1-0.0017770.003350
2-0.0028660.007323
3-0.1078100.001931
4-0.0997080.011197
\n", "
" ], "text/plain": [ " x y\n", "0 0.080377 0.008525\n", "1 -0.001777 0.003350\n", "2 -0.002866 0.007323\n", "3 -0.107810 0.001931\n", "4 -0.099708 0.011197" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from echoflow.demo import load_spiral\n", "df = load_spiral()\n", "df.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This dataset contains two continuous columns which, when plotted, form a spiral." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "plt.figure(figsize=(6,6))\n", "plt.scatter(df[\"x\"], df[\"y\"]);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can then use the `EchoFlow` class to model this dataset." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Epoch 10 | Train Loss -0.230\n", "Epoch 20 | Train Loss -0.225\n", "Epoch 30 | Train Loss -0.280\n", "Epoch 40 | Train Loss -0.345\n", "Epoch 50 | Train Loss -0.399\n", "Epoch 60 | Train Loss -0.434\n", "Epoch 70 | Train Loss -0.408\n", "Epoch 80 | Train Loss -0.438\n", "Epoch 90 | Train Loss -0.460\n", "Epoch 100 | Train Loss -0.513\n", "Epoch 110 | Train Loss -0.599\n", "Epoch 120 | Train Loss -0.532\n", "Epoch 130 | Train Loss -0.522\n", "Epoch 140 | Train Loss -0.518\n", "Epoch 150 | Train Loss -0.548\n", "Epoch 160 | Train Loss -0.578\n", "Epoch 170 | Train Loss -0.489\n", "Epoch 180 | Train Loss -0.582\n", "Epoch 190 | Train Loss -0.571\n", "Epoch 200 | Train Loss -0.544\n", "Epoch 210 | Train Loss -0.538\n", "Epoch 220 | Train Loss -0.527\n", "Epoch 230 | Train Loss -0.589\n", "Epoch 240 | Train Loss -0.528\n", "Epoch 250 | Train Loss -0.616\n", "Epoch 260 | Train Loss -0.535\n", "Epoch 270 | Train Loss -0.524\n", "Epoch 280 | Train Loss -0.558\n", "Epoch 290 | Train Loss -0.528\n", "Epoch 300 | Train Loss -0.509\n", "Epoch 310 | Train Loss -0.539\n", "Epoch 320 | Train Loss -0.563\n", "Epoch 330 | Train Loss -0.555\n", "Epoch 340 | Train Loss -0.571\n", "Epoch 350 | Train Loss -0.553\n", "Epoch 360 | Train Loss -0.514\n", "Epoch 370 | Train Loss -0.561\n", "Epoch 380 | Train Loss -0.543\n", "Epoch 390 | Train Loss -0.509\n", "Epoch 400 | Train Loss -0.525\n", "Epoch 410 | Train Loss -0.526\n", "Epoch 420 | Train Loss -0.574\n", "Epoch 430 | Train Loss -0.555\n", "Epoch 440 | Train Loss -0.516\n", "Epoch 450 | Train Loss -0.547\n", "Epoch 460 | Train Loss -0.546\n", "Epoch 470 | Train Loss -0.569\n", "Epoch 480 | Train Loss -0.515\n", "Epoch 490 | Train Loss -0.532\n", "Epoch 500 | Train Loss -0.523\n", "Epoch 510 | Train Loss -0.564\n", "Epoch 520 | Train Loss -0.518\n", "Epoch 530 | Train Loss -0.539\n", "Epoch 540 | Train Loss -0.533\n", "Epoch 550 | Train Loss -0.509\n", "Epoch 560 | Train Loss -0.552\n", "Epoch 570 | Train Loss -0.565\n", "Epoch 580 | Train Loss -0.515\n", "Epoch 590 | Train Loss -0.510\n", "Epoch 600 | Train Loss -0.515\n", "Epoch 610 | Train Loss -0.546\n", "Epoch 620 | Train Loss -0.524\n", "Epoch 630 | Train Loss -0.596\n", "Epoch 640 | Train Loss -0.578\n", "Epoch 650 | Train Loss -0.459\n", "Epoch 660 | Train Loss -0.505\n", "Epoch 670 | Train Loss -0.553\n", "Epoch 680 | Train Loss -0.540\n", "Epoch 690 | Train Loss -0.545\n", "Epoch 700 | Train Loss -0.581\n", "Epoch 710 | Train Loss -0.582\n", "Epoch 720 | Train Loss -0.531\n", "Epoch 730 | Train Loss -0.540\n", "Epoch 740 | Train Loss -0.516\n", "Epoch 750 | Train Loss -0.521\n", "Epoch 760 | Train Loss -0.562\n", "Epoch 770 | Train Loss -0.528\n", "Epoch 780 | Train Loss -0.580\n", "Epoch 790 | Train Loss -0.535\n", "Epoch 800 | Train Loss -0.546\n", "Epoch 810 | Train Loss -0.554\n", "Epoch 820 | Train Loss -0.509\n", "Epoch 830 | Train Loss -0.507\n", "Epoch 840 | Train Loss -0.494\n", "Epoch 850 | Train Loss -0.536\n", "Epoch 860 | Train Loss -0.558\n", "Epoch 870 | Train Loss -0.547\n", "Epoch 880 | Train Loss -0.552\n", "Epoch 890 | Train Loss -0.554\n", "Epoch 900 | Train Loss -0.561\n", "Epoch 910 | Train Loss -0.541\n", "Epoch 920 | Train Loss -0.520\n", "Epoch 930 | Train Loss -0.564\n", "Epoch 940 | Train Loss -0.492\n", "Epoch 950 | Train Loss -0.542\n", "Epoch 960 | Train Loss -0.562\n", "Epoch 970 | Train Loss -0.579\n", "Epoch 980 | Train Loss -0.503\n", "Epoch 990 | Train Loss -0.541\n", "Epoch 1000 | Train Loss -0.525\n" ] } ], "source": [ "from echoflow import EchoFlow\n", "\n", "model = EchoFlow(nb_blocks=8)\n", "model.fit(df)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Once our model is trained, we can sample from it." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "synthetic = model.sample(num_samples=1000)\n", "plt.scatter(synthetic[\"x\"], synthetic[\"y\"])" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.8" } }, "nbformat": 4, "nbformat_minor": 4 }